package com.quanquan.management.request;

import lombok.Data;
import request.PageRequestBody;

import java.util.List;

/**
 * @author gongzhou
 * @title: CouponRequestBody
 * @projectName SpringCloud
 * @description: TODO
 * @date 2019/4/117:01
 */
@Data
public class CouponRequestBody extends PageRequestBody {

    private String id;
    /**
     * 券名
     */
    private String name;
    private String createTime;
    /**
     * 券类型
     */
    private Integer type;
    /**
     * 优惠券简介
     */
    private String couponDesc;
    /**
     * 价值类型 0积分 1金额 2金额+积分
     */
    private Integer valueType;
    /**
     * 券价值积分
     */
    private Integer integral;
    /**
     * 商户id
     */
    private List<String> storeIdList;
    /**
     * 券价格
     */
    private String price;
    /**
     * 折扣方式 1折扣券 2.现金抵用券
     */
    private Integer disType;
    /**
     * 折扣值 dis_type 值为1时表示折扣 2时为抵用价格
     */
    private Integer disValue;
    /**
     * 现价格
     */
    private Integer nowPrice;
    /**
     * 原价格
     */
    private Integer oldPrice;
    /**
     * 使用最低金额 为空时没有使用金额限制
     */
    private Integer minAmount;
    /**
     * 开始发放时间
     */
    private String issueTimeStart;
    /**
     * 结束发放时间
     */
    private String issueTimeEnd;
    /**
     * 兑换时间限制种类 1.指定日期 2.领取优惠券后指定小时数 3.领取当天
     */
    private Integer useTimeType;
    /**
     * 优惠券生效时间
     */
    private String useTimeStart;

    /**
     * 使用规则
     */
    private String useRule;
    /**
     * use_time_type 等于1是有效 优惠券使用的最后期限日期
     */
    private String useTimeEnd;
    /**
     * 当use_time_type等于2时有效用户领取优惠券之后优惠券的有效小时数
     */
    private Integer useTimeHour;
    /**
     * 券总量
     */
    private Integer sumTatal;
    /**
     * 券剩余量
     */
    private Integer remainTotal;
    /**
     * 商户承担比例 0~100
     */
    private Integer ratioPay;
    /**
     * 审核状态 0、未审核1、初次审核通过 2、二次审核通过
     */
    private Integer checkState;
    /**
     * 二次审核管理员id
     */
    private Integer checkOneAdmin;
    /**
     * 一次审核时间
     */
    private String checkOneTime;
    /**
     * 二次审核管理员id
     */
    private Integer checkTwoAdmin;
    /**
     * 二次审核时间
     */
    private String checkTwoTime;
    /**
     * 排序凭证
     */
    private Integer sortOrder;
    /**
     * 券状态 0下架  1上架
     */
    private Integer status;
    /**
     * 是否热门商品 1热门 0普通
     */
    private Integer statusHot;

    /**
     * 商户id
     */
    private String storeId;

    /**
     * 查询起始时间
     */
    private String fromDate;

    /**
     * 查询结束时间
     */
    private String toDate;

    /**
     * 图片id
     */
    private List<String> imageIds;

    /**
     * 查看方式 0通过搜索查看 1其他情况查看
     */
    private Integer queryStatus;
    /**
     * 搜索的内容
     */
    private String content;

    /**
     * 当前优惠券每天可以购买的最大数量
     */
    private Integer count;

    private Integer statusShow;
    /**
     * 券库存类型 0限量 1不限量
     */
    private Integer sumType;

    /**
     * 开始购买时间
     */
    private String buyTimeStart;

    /**
     * 结束购买时间
     */
    private String buyTimeEnd;

    /**
     * 优惠券有效期内限制购买数量
     */
    private Integer buyTimeCount;

    /**
     * 发送请求方式 1核销小票自动发券
     */
    private Integer sendRequestType;


    /**
     * 展示开始时间
     */
    private String showTimeStart;

    /**
     * 展示结束时间
     */
    private String showTimeEnd;

    /**
     * 绑定的类型 1-绑定商户 2-绑定业态
     */
    private Integer bindType;

    /**
     * 业态id集合
     */
    private List<String> commercialIdList;

    public CouponRequestBody(Integer page, Integer size, String keyword, Integer type, String sort, boolean isAsc, String fromDate, String toDate) {
        super(page, size, keyword, type, sort, isAsc, fromDate, toDate);
    }

    public CouponRequestBody(Integer page, Integer size, String sort, boolean isAsc) {
        super(page, size, sort, isAsc);
    }

    public CouponRequestBody(Integer page, Integer size, String keyword, String sort, boolean isAsc) {
        super(page, size, keyword, sort, isAsc);
    }

    public CouponRequestBody() {
        super();
    }

}
